import Vue from 'vue'
import App from './App.vue'
/*引入路由*/
import router from './router'
/*引入状态管理vuex*/
import store from './store'
/*引入axios 安装命令 cnpm i axios -s*/
import axios from 'axios'
/*引入element-ui 安装命令 cnpm i element-ui -s*/
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
/*引入公共样式（初始化css）*/
import '../public/css/reset.css'

Vue.config.productionTip = false
/*使用全局axios 用$http代替axios*/
Vue.prototype.$https = axios
/*设置请求的的根地址*/
axios.defaults.baseURL = 'http://localhost:8080/gmu'
/*使用element-ui*/
Vue.use(ElementUI)

// main.js中引入message组件
import { Message } from 'element-ui';

// 配置路由权限
router.beforeEach((to, from, next) => {
    let token = localStorage.getItem('token') // 从localstorage中取出token
    if (to.meta.requireAuth) { // 判断该路由是否需要登录权限
        if (token) { // 判断本地是否存在
            next() // 操作继续
        } else {
            // 未登录,跳转到登陆页面，并且带上 将要去的地址，方便登陆后跳转。
            next('/login')
            Message.error("请先登录！")
        }
    } else {
        // 不需要权限即可直接访问
        next()
    }
})

new Vue({
    router,
    store,
    render: h => h(App)
}).$mount('#app')
